home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!snorkelwacker!apple!sun-barr!rutgers!aramis.rutgers.edu!mcgrew
- From: mcgrew@aramis.rutgers.edu (Charles Mcgrew)
- Newsgroups: comp.sources.sun
- Subject: v02i020: Contool 3.0, Part01/06
- Message-ID: <Sep.25.16.10.05.1990.25293@aramis.rutgers.edu>
- Date: 25 Sep 90 20:10:08 GMT
- Organization: Rutgers Univ., New Brunswick, N.J.
- Lines: 1494
- Approved: mcgrew@aramis.rutgers.edu
-
- Submitted-by: chuck@trantor.harris-atd.com (Chuck Musciano)
- Posting-number: Volume 2, Issue 20
- Archive-name: contool3.0/part01
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 1 (of 6)."
- # Contents: MANIFEST Makefile README contool.h error.c expand.c icons
- # icons/default_bad.icon icons/default_flash.icon
- # icons/default_good.icon icons/mask.icon images images/empty.icon
- # images/range.icon images/single.icon load.c load_icon.c manifest.h
- # patchlevel.h sample.filter window_misc.c
- # Wrapped by chuck@melmac on Fri Aug 17 10:00:50 1990
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'MANIFEST' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'MANIFEST'\"
- else
- echo shar: Extracting \"'MANIFEST'\" \(1168 characters\)
- sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
- X File Name Archive # Description
- X-----------------------------------------------------------
- X MANIFEST 1 This shipping list
- X Makefile 1
- X README 1
- X contool.c 4
- X contool.h 1
- X contool.info 3
- X contool.man 3
- X contool_ui.c 6
- X contool_ui.h 2
- X error.c 1
- X expand.c 1
- X filters.c 5
- X icons 1
- X icons/default_bad.icon 1
- X icons/default_flash.icon 1
- X icons/default_good.icon 1
- X icons/mask.icon 1
- X images 1
- X images/empty.icon 1
- X images/range.icon 1
- X images/single.icon 1
- X lex.c 2
- X load.c 1
- X load_icon.c 1
- X logging.c 2
- X manifest.h 1
- X misc.c 2
- X parse.y 2
- X patchlevel.h 1
- X props.c 3
- X regexp.c 2
- X sample.filter 1
- X store.c 2
- X window_misc.c 1
- END_OF_FILE
- if test 1168 -ne `wc -c <'MANIFEST'`; then
- echo shar: \"'MANIFEST'\" unpacked with wrong size!
- fi
- # end of 'MANIFEST'
- fi
- if test -f 'Makefile' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Makefile'\"
- else
- echo shar: Extracting \"'Makefile'\" \(1800 characters\)
- sed "s/^X//" >'Makefile' <<'END_OF_FILE'
- X# Where to put the executable
- XBIN = /usr/local/bin
- X
- X# Where to put the man page
- XMAN = /usr/man/manl
- XMANEXT = l
- X
- X# Where to install the help file
- XHELPDIR = /usr/local/lib/help
- X
- X# paths to be searched for icons
- XICON_PATH = .:./icons:/usr/local/images:/usr/include/images
- X
- X# Where you installed Open Windows
- XOPENWINHOME = /usr/openwin
- X
- X# Where your XView libraries are installed
- XLDFLAGS = -L$(OPENWINHOME)/lib
- X
- X# Where your XView include files are installed
- XCPPFLAGS = -I$(OPENWINHOME)/include
- X
- XCONTOOL = contool.o contool_ui.o error.o expand.o filters.o load.o load_icon.o logging.o misc.o parse.o props.o regexp.o store.o window_misc.o
- X
- XOPTIONS = -O
- X
- XLDLIBS = -lxview -lolgx -lX
- X
- X.c.o:
- X cc $(OPTIONS) $(CPPFLAGS) -c $<
- X
- X.y.o:
- X yacc $<
- X cc $(OPTIONS) -c -o $*.o y.tab.c
- X rm y.tab.c
- X
- Xcontool: $(CONTOOL)
- X cc $(OPTIONS) -o contool $(CONTOOL) $(LDFLAGS) $(LDLIBS)
- X
- Xinstall: contool $(MAN)/contool.$(MANEXT)
- X cp contool $(BIN)
- X chmod 755 $(BIN)/contool
- X cp contool.info $(HELPDIR)
- X
- X$(MAN)/contool.$(MANEXT): contool.man
- X cp -p contool.man $(MAN)/contool.$(MANEXT)
- X
- Xclean:
- X rm -f *~ $(OFILES) contool core
- X
- X#dependencies
- X
- Xcontool.o: manifest.h contool.h contool_ui.h icons/default_good.icon \
- X icons/default_bad.icon icons/default_flash.icon icons/mask.icon
- X
- Xcontool_ui.o: contool_ui.h
- X
- Xerror.o: manifest.h contool_ui.h
- X
- Xexpand.o: manifest.h
- X
- Xfilters.o: manifest.h contool.h contool_ui.h images/single.icon \
- X images/range.icon images/empty.icon
- X
- Xload.o: manifest.h contool.h contool_ui.h
- X
- Xload_icon.o: manifest.h contool.h
- X
- Xlogging.o: manifest.h contool.h contool_ui.h
- X
- Xmisc.o: manifest.h contool.h
- X
- Xparse.y: manifest.h contool.h lex.c
- X
- Xprops.o: manifest.h contool.h contool_ui.h
- X
- Xregexp.o: manifest.h contool.h
- X
- Xstore.o: manifest.h contool.h contool_ui.h
- X
- Xwindow_misc.o: manifest.h contool_ui.h
- END_OF_FILE
- if test 1800 -ne `wc -c <'Makefile'`; then
- echo shar: \"'Makefile'\" unpacked with wrong size!
- fi
- # end of 'Makefile'
- fi
- if test -f 'README' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'README'\"
- else
- echo shar: Extracting \"'README'\" \(7305 characters\)
- sed "s/^X//" >'README' <<'END_OF_FILE'
- X/************************************************************************/
- X/* Copyright 1988-1990 by Chuck Musciano and Harris Corporation */
- X/* */
- X/* Permission to use, copy, modify, and distribute this software */
- X/* and its documentation for any purpose and without fee is */
- X/* hereby granted, provided that the above copyright notice */
- X/* appear in all copies and that both that copyright notice and */
- X/* this permission notice appear in supporting documentation, and */
- X/* that the name of Chuck Musciano and Harris Corporation not be */
- X/* used in advertising or publicity pertaining to distribution */
- X/* of the software without specific, written prior permission. */
- X/* Chuck Musciano and Harris Corporation make no representations */
- X/* about the suitability of this software for any purpose. It is */
- X/* provided "as is" without express or implied warranty. This */
- X/* software may not be sold without the prior explicit permission */
- X/* of Harris Corporation. */
- X/************************************************************************/
- X
- X Contool Version 3.0
- X
- X Contool will capture and display system console messages with timestamps.
- XIt is a replacement for the standard Sun console, which is created with
- X"cmdtool -C". Contool will flash its icon and beep when messages are written
- Xto the icon, so you can keep it closed on your desktop until a message arrives.
- XYou can modify this beeping and flashing behavior; see the man page for more
- Xdetails.
- X
- X You can instruct contool to filter and ignore certain common console
- Xmessages. The man page explains how to create a file of filters in
- X~/.contool; the included sample.filter is how my filters are set up. You
- Xcan modify this to suit yourself, and copy it to ~/.contool.
- X
- X This version of contool will only work with Open Windows 2.0, from Sun,
- Xor the XView 2.0 libraries available via anonymous FTP from expo.lcs.mit.edu.
- XIn either case, obviously, you'll need to be running some version of X Windows.
- X
- X There are no plans to produce a SunView version of contool 3.0.
- X
- X Before building contool, you need to check several site dependencies
- Xin the Makefile. These dependencies are:
- X
- X In Makefile:
- X BIN Where the executable will go, normally
- X /usr/local/bin
- X
- X MANDIR Where the man page will go, normally
- X /usr/man/manl
- X
- X MANEXT The man page extension, usually 'l',
- X for local man pages. You may want to
- X make MANDIR /usr/man/man1, in which case
- X MANEXT should be '1'.
- X
- X HELPDIR Where the context-sensitive help file
- X will be stored.
- X
- X ICON_PATH Path to search (at runtime) for other
- X icon files. This path will only be used
- X if the user does not have the ICON_PATH
- X environment variable defined. Should
- X consist of a various directories
- X separated by colons.
- X
- X OPENWINHOME Where you installed Open Windows.
- X Alternately, where you installed the
- X XView toolkit shipped with X11R4. Must
- X be a directory with a child directory
- X named "include" which contains X and
- X XView include files.
- X
- X LDFLAGS Where ld can find your XView libraries.
- X If you compile with Open Windows, the
- X default value should be correct. If you
- X are using the X11 XView libraries, you
- X may need to modify this value.
- X
- X CPPFLAGS Where cpp can find your XView include
- X files. If you compile with Open Windows,
- X the default value should be correct. If
- X you are using the X11 XView toolkit, you
- X may need to modify this value.
- X
- XOnce you have adjusted these values, just type "make contool" or "make
- Xinstall".
- X
- X Contool honors window command line options, described in xview(1),
- Xso you can change the default window size, icon position, etc. We like
- Xto bring contool up closed, using "-Wi".
- X
- X Comments, bugs, to me, please. I would be very interested in your
- Ximpressions of contool and any suggestions you might have to make it better.
- XBy the way, there are a few convenient untility routines in misc.c you might
- Xfind useful in other programs you are writing.
- X
- XChuck Musciano
- XAdvanced Technology Department
- XHarris Corporation
- XPO Box 37, MS 3A/1912
- XMelbourne, FL 32902
- X(407) 727-6131
- XARPA: chuck@trantor.harris-atd.com
- X
- X******************************** KNOWN XVIEW BUG ********************************
- X* *
- X* It is a known bug in XView that if you bring up a dialog box with the *
- X* pushpin out (the default) and display a menu without selecting an item from *
- X* the menu, the dialog box will be closed. This can be demonstrated in contool *
- X* by bringing up the edit filters window, and displaying the "edit" menu *
- X* without selecting an action. *
- X* *
- X* This bug has been reported to Sun, but will not be fixed until version *
- X* 3.0 of XView. *
- X* *
- X*********************************************************************************
- X
- X*********************************************************************************
- X* Change history *
- X*********************************************************************************
- X
- X 1.0 20 Jun 88 Original release
- X 1.1 30 Jun 88 Added -p option to pop open when messages
- X arrive. Suggested by Doug Lind
- X (lind@perron.ms.washington.edu).
- X Added alternate icon sets for more attractive
- X appearance when messages arrive. Alternate
- X set two is from David Eckelcamp
- X (eckelcamp@mcc.com).
- X Cleaned up Makefile. Again, courtesy of
- X David Eckelcamp.
- X 2.0 23 Aug 88 Added automatic reload of filters when
- X filter file is modified. Suggested by
- X Craig Musicant (cmusican@stanford.prime.com).
- X Filter strings are now regular expressions.
- X Provided by jqj@hogg.cc.uoregon.edu.
- X Reworked frame menu, based upon diffs posted
- X to sun-source@titan.rice.edu.
- X Added protection from overflowing the text edit
- X window when too many messages arrive.
- X Filters can now be read from any file, not
- X just ~/.contool.
- X 2.1 10 Feb 89 Added logging capability, courtesy of
- X Gregory Bond (gnb@melba.bby.oz.au).
- X 2.2 19 Sep 89 Added filter editing.
- X Added icon pathname completion, courtesy of
- X Mike Arms (sandia!marms@unmvax.cs.unm.edu).
- X Added moving the blinking icon to the front,
- X courtesy of Peter Lennevi
- X (etxlevi@solsta.ericsson.se).
- X Changed icon loading to use ICON_PATH, and
- X supported ~ expansion, suggested by
- X Larry Virden (osu-cis!chemabs!lwv27).
- X Fixed multiple message alert handling,
- X as suggested by Ellery Chan
- X (ellery@trantor.harris-atd.com).
- X 3.0 6 Jun 90 Ported to XView toolkit, running under
- X Open Windows 2.0.
- X Reworked interface to be OPEN LOOK
- X compliant.
- X Added saving of default actions to
- X filter file.
- X Removed large number of command line
- X options in lieu of properties
- X dialog box.
- X Added ability to associate a command
- X to be executed when a message arrives.
- X Added explicit filter reset capability.
- X Added the ability to print the contents
- X of the console. Suggested by
- X Danielle Heinzer
- X (ESC1298%ESOC.BITNET@cunyvm.cuny.edu).
- X Reworked console overflow handling,
- X courtesy of Matt Cohen
- X (sysnmc@magic706.chron.com).
- END_OF_FILE
- if test 7305 -ne `wc -c <'README'`; then
- echo shar: \"'README'\" unpacked with wrong size!
- fi
- # end of 'README'
- fi
- if test -f 'contool.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'contool.h'\"
- else
- echo shar: Extracting \"'contool.h'\" \(2263 characters\)
- sed "s/^X//" >'contool.h' <<'END_OF_FILE'
- X/************************************************************************/
- X/* Copyright 1988-1990 by Chuck Musciano and Harris Corporation */
- X/* */
- X/* Permission to use, copy, modify, and distribute this software */
- X/* and its documentation for any purpose and without fee is */
- X/* hereby granted, provided that the above copyright notice */
- X/* appear in all copies and that both that copyright notice and */
- X/* this permission notice appear in supporting documentation, and */
- X/* that the name of Chuck Musciano and Harris Corporation not be */
- X/* used in advertising or publicity pertaining to distribution */
- X/* of the software without specific, written prior permission. */
- X/* Chuck Musciano and Harris Corporation make no representations */
- X/* about the suitability of this software for any purpose. It is */
- X/* provided "as is" without express or implied warranty. This */
- X/* software may not be sold without the prior explicit permission */
- X/* of Harris Corporation. */
- X/************************************************************************/
- X
- X/************************************************************************/
- X/* */
- X/* contool.h internal contool data structures */
- X/* */
- X/************************************************************************/
- X
- X#define is_null(x) ((x)? x : "")
- X
- X#define BEEP_BIT 0x01
- X#define COMMAND_BIT 0x02
- X#define FLASH_BIT 0x04
- X#define OPEN_BIT 0x08
- X#define STAMP_BIT 0x10
- X
- Xtypedef struct filter Filter;
- Xtypedef struct props Props;
- X
- Xstruct filter {char *start;
- X char *start_re;
- X int start_circf;
- X char *stop;
- X char *stop_re;
- X int stop_circf;
- X char *comment;
- X int save;
- X int beep;
- X int flash;
- X int open;
- X int stamp;
- X char *command;
- X Filter *next;
- X };
- X
- Xstruct props {int beep;
- X int flash;
- X int open;
- X int stamp;
- X char *command;
- X char *good_icon;
- X char *bad_icon;
- X char *flash_icon;
- X char *print_filter;
- X char *log_file;
- X int log_after;
- X int stamp_resolution;
- X int max_size;
- X int delete_amount;
- X };
- X
- XPUBLIC char *compile_exp();
- XPUBLIC char *expand_tilde();
- X
- XPUBLIC Props defaults;
- XPUBLIC Props *parsed_defaults;
- XPUBLIC Filter *parsed_filters;
- XPUBLIC Filter *filters;
- XPUBLIC int parse_errors_occured;
- XPUBLIC char *filter_file;
- END_OF_FILE
- if test 2263 -ne `wc -c <'contool.h'`; then
- echo shar: \"'contool.h'\" unpacked with wrong size!
- fi
- # end of 'contool.h'
- fi
- if test -f 'error.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'error.c'\"
- else
- echo shar: Extracting \"'error.c'\" \(2101 characters\)
- sed "s/^X//" >'error.c' <<'END_OF_FILE'
- X/************************************************************************/
- X/* Copyright 1988-1990 by Chuck Musciano and Harris Corporation */
- X/* */
- X/* Permission to use, copy, modify, and distribute this software */
- X/* and its documentation for any purpose and without fee is */
- X/* hereby granted, provided that the above copyright notice */
- X/* appear in all copies and that both that copyright notice and */
- X/* this permission notice appear in supporting documentation, and */
- X/* that the name of Chuck Musciano and Harris Corporation not be */
- X/* used in advertising or publicity pertaining to distribution */
- X/* of the software without specific, written prior permission. */
- X/* Chuck Musciano and Harris Corporation make no representations */
- X/* about the suitability of this software for any purpose. It is */
- X/* provided "as is" without express or implied warranty. This */
- X/* software may not be sold without the prior explicit permission */
- X/* of Harris Corporation. */
- X/************************************************************************/
- X
- X/************************************************************************/
- X/* */
- X/* error.c handle error messages */
- X/* */
- X/************************************************************************/
- X
- X#include <stdio.h>
- X#include <xview/xview.h>
- X#include <xview/notice.h>
- X
- X#include "manifest.h"
- X#include "contool_ui.h"
- X
- XPUBLIC contool_base_objects *contool_base;
- X
- X/************************************************************************/
- XPRIVATE void show_error(msg)
- X
- Xchar *msg;
- X
- X{
- X notice_prompt(contool_base->base, NULL,
- X NOTICE_MESSAGE_STRINGS, msg, 0,
- X NOTICE_BUTTON_YES, "OK",
- X 0);
- X}
- X
- X/************************************************************************/
- XEXPORT void error(a, b, c, d, e, f)
- X
- Xchar *a, *b, *c, *d, *e, *f;
- X
- X{ char buf[1024];
- X
- X sprintf(buf, a, b, c, d, e, f);
- X show_error(buf);
- X}
- X
- X/************************************************************************/
- XEXPORT void abend(a, b, c, d, e, f)
- X
- Xchar *a, *b, *c, *d, *e, *f;
- X
- X{
- X error(a, b, c, d, e, f);
- X exit(1);
- X}
- END_OF_FILE
- if test 2101 -ne `wc -c <'error.c'`; then
- echo shar: \"'error.c'\" unpacked with wrong size!
- fi
- # end of 'error.c'
- fi
- if test -f 'expand.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'expand.c'\"
- else
- echo shar: Extracting \"'expand.c'\" \(3088 characters\)
- sed "s/^X//" >'expand.c' <<'END_OF_FILE'
- X/************************************************************************/
- X/* Copyright 1988-1990 by Chuck Musciano and Harris Corporation */
- X/* */
- X/* Permission to use, copy, modify, and distribute this software */
- X/* and its documentation for any purpose and without fee is */
- X/* hereby granted, provided that the above copyright notice */
- X/* appear in all copies and that both that copyright notice and */
- X/* this permission notice appear in supporting documentation, and */
- X/* that the name of Chuck Musciano and Harris Corporation not be */
- X/* used in advertising or publicity pertaining to distribution */
- X/* of the software without specific, written prior permission. */
- X/* Chuck Musciano and Harris Corporation make no representations */
- X/* about the suitability of this software for any purpose. It is */
- X/* provided "as is" without express or implied warranty. This */
- X/* software may not be sold without the prior explicit permission */
- X/* of Harris Corporation. */
- X/************************************************************************/
- X
- X#include <sys/types.h>
- X#include <sys/dir.h>
- X#include <pwd.h>
- X
- X#include "manifest.h"
- X
- XPUBLIC char *rindex(), *index();
- X
- X/************************************************************************/
- XPRIVATE char *root_path(path)
- X
- Xchar *path;
- X
- X{ char *p;
- X
- X if (p = rindex(path, '/'))
- X if (p == path)
- X p[1] = '\0';
- X else
- X *p = '\0';
- X else
- X *path = '\0';
- X return(path);
- X}
- X
- X/************************************************************************/
- XPRIVATE char *last_node(path)
- X
- Xchar *path;
- X
- X{ char *p;
- X
- X return((p = rindex(path, '/'))? p + 1 : path);
- X}
- X
- X/************************************************************************/
- XEXPORT char *expand_filename(path)
- X
- Xchar *path;
- X
- X{ static char s[1024];
- X char pattern[1024], candidate[1024], *p,*q;
- X DIR *dir;
- X struct direct *dp;
- X struct passwd *pw;
- X
- X strcpy(s, path);
- X if (*path == '~')
- X if (path[1] == '/' || path[1] == '\0') {
- X strcpy(s, getenv("HOME"));
- X strcat(s, path + 1);
- X }
- X else {
- X if ((p = index(path, '/')) != NULL)
- X *p = '\0';
- X if ((pw = getpwnam(path + 1)) != NULL) {
- X strcpy(s, pw->pw_dir);
- X if (p != NULL) {
- X strcat(s, "/");
- X strcat(s, p + 1);
- X }
- X }
- X else
- X return(NULL);
- X }
- X strcpy(pattern, last_node(s));
- X if (*pattern == '\0')
- X return(s);
- X root_path(s);
- X candidate[0] = '\0';
- X if (*s == '\0')
- X strcpy(s, ".");
- X if ((dir = opendir(s)) == NULL) {
- X strcpy(s, path);
- X return(s);
- X }
- X while ((dp = readdir(dir)) != NULL)
- X if (strncmp(dp->d_name, pattern, strlen(pattern)) == 0)
- X if (*candidate == '\0')
- X strcpy(candidate, dp->d_name);
- X else {
- X for (p = candidate, q = dp->d_name; *p == *q; p++, q++)
- X ;
- X *p = '\0';
- X }
- X closedir(dir);
- X if (*candidate == '\0')
- X return(NULL);
- X else {
- X if (strcmp(s, ".") == 0)
- X *s = '\0';
- X else if (s[strlen(s) - 1] != '/')
- X strcat(s, "/");
- X strcat(s, candidate);
- X }
- X return(s);
- X}
- END_OF_FILE
- if test 3088 -ne `wc -c <'expand.c'`; then
- echo shar: \"'expand.c'\" unpacked with wrong size!
- fi
- # end of 'expand.c'
- fi
- if test ! -d 'icons' ; then
- echo shar: Creating directory \"'icons'\"
- mkdir 'icons'
- fi
- if test -f 'icons/default_bad.icon' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'icons/default_bad.icon'\"
- else
- echo shar: Extracting \"'icons/default_bad.icon'\" \(1997 characters\)
- sed "s/^X//" >'icons/default_bad.icon' <<'END_OF_FILE'
- X/* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
- X */
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0xFFFF,0xFFFE,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0x8000,0x0003,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0x8000,0x0003,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0000,0xFFFF,0xFFFE,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x000F,0xFFFF,0xFFFF,0xE000,
- X 0x0018,0x0000,0x0000,0x3000,
- X 0x0031,0x5555,0x5555,0x1800,
- X 0x0062,0xAAAA,0xAAAA,0x8C00,
- X 0x00C5,0x5555,0x5555,0x4600,
- X 0x00C0,0x0000,0x0000,0x0600,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x000E,0x30B0,0xE184,0x7000,
- X 0x0010,0x48C9,0x0244,0x8800,
- X 0x0020,0x8489,0x0424,0x8800,
- X 0x0020,0x8488,0xC424,0xF800,
- X 0x0020,0x8488,0x2424,0x8000,
- X 0x0010,0x4888,0x2244,0x8800,
- X 0x000E,0x3089,0xC184,0x7000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000
- END_OF_FILE
- if test 1997 -ne `wc -c <'icons/default_bad.icon'`; then
- echo shar: \"'icons/default_bad.icon'\" unpacked with wrong size!
- fi
- # end of 'icons/default_bad.icon'
- fi
- if test -f 'icons/default_flash.icon' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'icons/default_flash.icon'\"
- else
- echo shar: Extracting \"'icons/default_flash.icon'\" \(1997 characters\)
- sed "s/^X//" >'icons/default_flash.icon' <<'END_OF_FILE'
- X/* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
- X */
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0xFFFF,0xFFFE,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0x8000,0x0003,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xA000,0x000B,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0x8000,0x0003,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0000,0xFFFF,0xFFFE,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x000F,0xFFFF,0xFFFF,0xE000,
- X 0x0018,0x0000,0x0000,0x3000,
- X 0x0031,0x5555,0x5555,0x1800,
- X 0x0062,0xAAAA,0xAAAA,0x8C00,
- X 0x00C5,0x5555,0x5555,0x4600,
- X 0x00C0,0x0000,0x0000,0x0600,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x000E,0x30B0,0xE184,0x7000,
- X 0x0010,0x48C9,0x0244,0x8800,
- X 0x0020,0x8489,0x0424,0x8800,
- X 0x0020,0x8488,0xC424,0xF800,
- X 0x0020,0x8488,0x2424,0x8000,
- X 0x0010,0x4888,0x2244,0x8800,
- X 0x000E,0x3089,0xC184,0x7000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000
- END_OF_FILE
- if test 1997 -ne `wc -c <'icons/default_flash.icon'`; then
- echo shar: \"'icons/default_flash.icon'\" unpacked with wrong size!
- fi
- # end of 'icons/default_flash.icon'
- fi
- if test -f 'icons/default_good.icon' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'icons/default_good.icon'\"
- else
- echo shar: Extracting \"'icons/default_good.icon'\" \(1997 characters\)
- sed "s/^X//" >'icons/default_good.icon' <<'END_OF_FILE'
- X/* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
- X */
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0xFFFF,0xFFFE,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0x8000,0x0003,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0xB555,0x555B,0x0000,
- X 0x0001,0xAAAA,0xAAAB,0x0000,
- X 0x0001,0xB555,0x555B,0x0000,
- X 0x0001,0xAAAA,0xA02B,0x0000,
- X 0x0001,0xB555,0x505B,0x0000,
- X 0x0001,0xAAAA,0xA02B,0x0000,
- X 0x0001,0xB555,0x505B,0x0000,
- X 0x0001,0xAAAA,0xA02B,0x0000,
- X 0x0001,0xB555,0x555B,0x0000,
- X 0x0001,0xAAAA,0xAAAB,0x0000,
- X 0x0001,0xB555,0x555B,0x0000,
- X 0x0001,0xAAAA,0xAAAB,0x0000,
- X 0x0001,0xB555,0x555B,0x0000,
- X 0x0001,0xAAAA,0xAAAB,0x0000,
- X 0x0001,0xB555,0x555B,0x0000,
- X 0x0001,0xAAAA,0xAAAB,0x0000,
- X 0x0001,0xB555,0x555B,0x0000,
- X 0x0001,0xBFFF,0xFFFB,0x0000,
- X 0x0001,0x8000,0x0003,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0000,0xFFFF,0xFFFE,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x000F,0xFFFF,0xFFFF,0xE000,
- X 0x0018,0x0000,0x0000,0x3000,
- X 0x0031,0x5555,0x5555,0x1800,
- X 0x0062,0xAAAA,0xAAAA,0x8C00,
- X 0x00C5,0x5555,0x5555,0x4600,
- X 0x00C0,0x0000,0x0000,0x0600,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x000E,0x30B0,0xE184,0x7000,
- X 0x0010,0x48C9,0x0244,0x8800,
- X 0x0020,0x8489,0x0424,0x8800,
- X 0x0020,0x8488,0xC424,0xF800,
- X 0x0020,0x8488,0x2424,0x8000,
- X 0x0010,0x4888,0x2244,0x8800,
- X 0x000E,0x3089,0xC184,0x7000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000
- END_OF_FILE
- if test 1997 -ne `wc -c <'icons/default_good.icon'`; then
- echo shar: \"'icons/default_good.icon'\" unpacked with wrong size!
- fi
- # end of 'icons/default_good.icon'
- fi
- if test -f 'icons/mask.icon' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'icons/mask.icon'\"
- else
- echo shar: Extracting \"'icons/mask.icon'\" \(1997 characters\)
- sed "s/^X//" >'icons/mask.icon' <<'END_OF_FILE'
- X/* Format_version=1, Width=64, Height=64, Depth=1, Valid_bits_per_item=16
- X */
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0xFFFF,0xFFFE,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0001,0xFFFF,0xFFFF,0x0000,
- X 0x0000,0xFFFF,0xFFFE,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x000F,0xFFFF,0xFFFF,0xE000,
- X 0x001F,0xFFFF,0xFFFF,0xF000,
- X 0x003F,0xFFFF,0xFFFF,0xF800,
- X 0x007F,0xFFFF,0xFFFF,0xFC00,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x00FF,0xFFFF,0xFFFF,0xFE00,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x0000,0x0000,0x0004,0x0000,
- X 0x000E,0x30B0,0xE184,0x7000,
- X 0x0010,0x48C9,0x0244,0x8800,
- X 0x0020,0x8489,0x0424,0x8800,
- X 0x0020,0x8488,0xC424,0xF800,
- X 0x0020,0x8488,0x2424,0x8000,
- X 0x0010,0x4888,0x2244,0x8800,
- X 0x000E,0x3089,0xC184,0x7000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000
- END_OF_FILE
- if test 1997 -ne `wc -c <'icons/mask.icon'`; then
- echo shar: \"'icons/mask.icon'\" unpacked with wrong size!
- fi
- # end of 'icons/mask.icon'
- fi
- if test ! -d 'images' ; then
- echo shar: Creating directory \"'images'\"
- mkdir 'images'
- fi
- if test -f 'images/empty.icon' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'images/empty.icon'\"
- else
- echo shar: Extracting \"'images/empty.icon'\" \(193 characters\)
- sed "s/^X//" >'images/empty.icon' <<'END_OF_FILE'
- X/* Format_version=1, Width=16, Height=16, Depth=1, Valid_bits_per_item=16
- X */
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
- END_OF_FILE
- if test 193 -ne `wc -c <'images/empty.icon'`; then
- echo shar: \"'images/empty.icon'\" unpacked with wrong size!
- fi
- # end of 'images/empty.icon'
- fi
- if test -f 'images/range.icon' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'images/range.icon'\"
- else
- echo shar: Extracting \"'images/range.icon'\" \(193 characters\)
- sed "s/^X//" >'images/range.icon' <<'END_OF_FILE'
- X/* Format_version=1, Width=16, Height=16, Depth=1, Valid_bits_per_item=16
- X */
- X 0x9440,0xBF68,0x0000,0x8000,0xF6DE,0x0000,0x8A22,0xDFBB,
- X 0x0000,0xA100,0xBBB6,0x0000,0x8824,0xEDB7,0x0000,0x0000
- END_OF_FILE
- if test 193 -ne `wc -c <'images/range.icon'`; then
- echo shar: \"'images/range.icon'\" unpacked with wrong size!
- fi
- # end of 'images/range.icon'
- fi
- if test -f 'images/single.icon' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'images/single.icon'\"
- else
- echo shar: Extracting \"'images/single.icon'\" \(193 characters\)
- sed "s/^X//" >'images/single.icon' <<'END_OF_FILE'
- X/* Format_version=1, Width=16, Height=16, Depth=1, Valid_bits_per_item=16
- X */
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x8A22,0xDFBB,
- X 0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000
- END_OF_FILE
- if test 193 -ne `wc -c <'images/single.icon'`; then
- echo shar: \"'images/single.icon'\" unpacked with wrong size!
- fi
- # end of 'images/single.icon'
- fi
- if test -f 'load.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'load.c'\"
- else
- echo shar: Extracting \"'load.c'\" \(3321 characters\)
- sed "s/^X//" >'load.c' <<'END_OF_FILE'
- X/************************************************************************/
- X/* Copyright 1988-1990 by Chuck Musciano and Harris Corporation */
- X/* */
- X/* Permission to use, copy, modify, and distribute this software */
- X/* and its documentation for any purpose and without fee is */
- X/* hereby granted, provided that the above copyright notice */
- X/* appear in all copies and that both that copyright notice and */
- X/* this permission notice appear in supporting documentation, and */
- X/* that the name of Chuck Musciano and Harris Corporation not be */
- X/* used in advertising or publicity pertaining to distribution */
- X/* of the software without specific, written prior permission. */
- X/* Chuck Musciano and Harris Corporation make no representations */
- X/* about the suitability of this software for any purpose. It is */
- X/* provided "as is" without express or implied warranty. This */
- X/* software may not be sold without the prior explicit permission */
- X/* of Harris Corporation. */
- X/************************************************************************/
- X
- X/************************************************************************/
- X/* */
- X/* load.c contool load dialog manager */
- X/* */
- X/************************************************************************/
- X
- X#include <stdio.h>
- X#include <sys/param.h>
- X#include <sys/types.h>
- X#include <xview/xview.h>
- X#include <xview/panel.h>
- X#include <xview/xv_xrect.h>
- X
- X#include "manifest.h"
- X#include "contool.h"
- X#include "contool_ui.h"
- X
- XPRIVATE contool_load_objects *contool_load = NULL;
- X
- X/************************************************************************/
- XEXPORT Menu_item popup_load_config(item, op)
- X
- XMenu_item item;
- XMenu_generate op;
- X
- X{ contool_base_objects * ip = (contool_base_objects *) xv_get(item, XV_KEY_DATA, INSTANCE);
- X
- X if (op == MENU_NOTIFY) {
- X if (contool_load == NULL) {
- X contool_load = contool_load_objects_initialize(NULL, ip->base);
- X xv_set(contool_load->load_file,
- X PANEL_NOTIFY_LEVEL, PANEL_SPECIFIED,
- X PANEL_NOTIFY_STRING, "\n\r ",
- X NULL);
- X xv_set(contool_load->load_type, PANEL_VALUE, 3, NULL);
- X place_dialog(ip->base, contool_load->load);
- X }
- X xv_set(contool_load->load_file, PANEL_VALUE, filter_file, NULL);
- X xv_set(contool_load->load, XV_SHOW, TRUE, NULL);
- X }
- X return item;
- X}
- X
- X/************************************************************************/
- XEXPORT void load_filters(item, event)
- X
- XPanel_item item;
- XEvent *event;
- X
- X{ contool_load_objects *ip = (contool_load_objects *) xv_get(item, XV_KEY_DATA, INSTANCE);
- X int kind;
- X char *path;
- X
- X path = expand_tilde(xv_get(ip->load_file, PANEL_VALUE));
- X if (lex_init(path)) {
- X yyparse();
- X if (parse_errors_occured) {
- X error("Error in configuration file. Configuration not loaded");
- X xv_set(ip->accept_load, PANEL_NOTIFY_STATUS, XV_ERROR, NULL);
- X }
- X else {
- X kind = (int) xv_get(ip->load_type, PANEL_VALUE);
- X if (kind & 1 && parsed_defaults)
- X defaults = *parsed_defaults;
- X if (kind & 2)
- X filters = parsed_filters;
- X free(parsed_defaults);
- X filter_file = path;
- X }
- X }
- X else {
- X error("Unable to read configuration file");
- X xv_set(ip->accept_load, PANEL_NOTIFY_STATUS, XV_ERROR, NULL);
- X free(path);
- X }
- X}
- END_OF_FILE
- if test 3321 -ne `wc -c <'load.c'`; then
- echo shar: \"'load.c'\" unpacked with wrong size!
- fi
- # end of 'load.c'
- fi
- if test -f 'load_icon.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'load_icon.c'\"
- else
- echo shar: Extracting \"'load_icon.c'\" \(2086 characters\)
- sed "s/^X//" >'load_icon.c' <<'END_OF_FILE'
- X/************************************************************************/
- X/* Copyright 1988-1990 by Chuck Musciano and Harris Corporation */
- X/* */
- X/* Permission to use, copy, modify, and distribute this software */
- X/* and its documentation for any purpose and without fee is */
- X/* hereby granted, provided that the above copyright notice */
- X/* appear in all copies and that both that copyright notice and */
- X/* this permission notice appear in supporting documentation, and */
- X/* that the name of Chuck Musciano and Harris Corporation not be */
- X/* used in advertising or publicity pertaining to distribution */
- X/* of the software without specific, written prior permission. */
- X/* Chuck Musciano and Harris Corporation make no representations */
- X/* about the suitability of this software for any purpose. It is */
- X/* provided "as is" without express or implied warranty. This */
- X/* software may not be sold without the prior explicit permission */
- X/* of Harris Corporation. */
- X/************************************************************************/
- X
- X#include <stdio.h>
- X#include <sys/file.h>
- X
- X#include <xview/xview.h>
- X#include <xview/icon_load.h>
- X
- X#include "manifest.h"
- X#include "contool.h"
- X
- XPUBLIC char *getenv();
- X
- X/************************************************************************/
- XEXPORT Server_image load_icon(path, message)
- X
- Xchar *path;
- Xchar *message;
- X
- X{ char *icon_path, new_path[1024], *p, *q;
- X
- X if (*path == '/')
- X return(icon_load_svrim(path, message));
- X else {
- X if ((p = getenv("ICON_PATH")) != NULL)
- X icon_path = strsave(p);
- X else
- X icon_path = strsave(ICON_PATH);
- X for (p = icon_path; *p; ) {
- X if (q = index(p, ':'))
- X *q = '\0';
- X strcpy(new_path, p);
- X strcat(new_path, "/");
- X strcat(new_path, path);
- X if (access(new_path, R_OK) == 0) {
- X free(icon_path);
- X return(icon_load_svrim(new_path, message));
- X }
- X else if (q != NULL)
- X p = q + 1;
- X else
- X break;
- X }
- X free(icon_path);
- X return(icon_load_svrim(path, message));
- X }
- X}
- END_OF_FILE
- if test 2086 -ne `wc -c <'load_icon.c'`; then
- echo shar: \"'load_icon.c'\" unpacked with wrong size!
- fi
- # end of 'load_icon.c'
- fi
- if test -f 'manifest.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'manifest.h'\"
- else
- echo shar: Extracting \"'manifest.h'\" \(1725 characters\)
- sed "s/^X//" >'manifest.h' <<'END_OF_FILE'
- X/************************************************************************/
- X/* Copyright 1988-1990 by Chuck Musciano and Harris Corporation */
- X/* */
- X/* Permission to use, copy, modify, and distribute this software */
- X/* and its documentation for any purpose and without fee is */
- X/* hereby granted, provided that the above copyright notice */
- X/* appear in all copies and that both that copyright notice and */
- X/* this permission notice appear in supporting documentation, and */
- X/* that the name of Chuck Musciano and Harris Corporation not be */
- X/* used in advertising or publicity pertaining to distribution */
- X/* of the software without specific, written prior permission. */
- X/* Chuck Musciano and Harris Corporation make no representations */
- X/* about the suitability of this software for any purpose. It is */
- X/* provided "as is" without express or implied warranty. This */
- X/* software may not be sold without the prior explicit permission */
- X/* of Harris Corporation. */
- X/************************************************************************/
- X
- X/************************************************************************/
- X/* */
- X/* manifest.h simple manifest constants */
- X/* */
- X/************************************************************************/
- X
- X#define TRUE 1
- X#define FALSE 0
- X
- X#define PRIVATE static
- X#define PUBLIC extern
- X#define EXPORT
- X
- X#ifndef NULL
- X#define NULL 0
- X#endif
- X
- X#if !defined(ICON_PATH)
- X#define ICON_PATH ".:./icons:/usr/local/images:/usr/include/images"
- X#endif
- X
- X#define strsave(x) (((x) == NULL)? NULL : (char *) strcpy((char *) malloc(strlen(x) + 1), x))
- X#define cond_free(x) ((x)? free(x) : 0)
- X
- XPUBLIC int errno;
- XPUBLIC char *sys_errlist[];
- END_OF_FILE
- if test 1725 -ne `wc -c <'manifest.h'`; then
- echo shar: \"'manifest.h'\" unpacked with wrong size!
- fi
- # end of 'manifest.h'
- fi
- if test -f 'patchlevel.h' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'patchlevel.h'\"
- else
- echo shar: Extracting \"'patchlevel.h'\" \(243 characters\)
- sed "s/^X//" >'patchlevel.h' <<'END_OF_FILE'
- X/************************************************************************/
- X/* */
- X/* Patch Comments */
- X/* 0 Initial release for XView */
- X/* */
- X/************************************************************************/
- END_OF_FILE
- if test 243 -ne `wc -c <'patchlevel.h'`; then
- echo shar: \"'patchlevel.h'\" unpacked with wrong size!
- fi
- # end of 'patchlevel.h'
- fi
- if test -f 'sample.filter' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'sample.filter'\"
- else
- echo shar: Extracting \"'sample.filter'\" \(2201 characters\)
- sed "s/^X//" >'sample.filter' <<'END_OF_FILE'
- Xdefaults {
- X beep 3
- X flash yes
- X open no
- X stamp yes
- X good_icon ""
- X check_icon ""
- X flash_icon ""
- X print "lpr"
- X log_file ""
- X log_before_filtering no
- X timestamp 10
- X display 32768
- X delete 1024
- X}
- Xfilters {
- X {
- X match "su: chuck"
- X comment "Track myself becoming super user"
- X ignore no
- X beep 0
- X flash no
- X open no
- X stamp yes
- X }
- X {
- X match "su:"
- X comment "Get excited about anyone else becoming superuser"
- X ignore no
- X beep 4
- X flash no
- X open yes
- X stamp yes
- X }
- X {
- X match "Window data lock"
- X to "The offending process"
- X comment "Ignore spurious window system messages"
- X ignore yes
- X }
- X {
- X match "win ioctl number"
- X comment "Ignore spurious window system messages"
- X ignore no
- X beep 0
- X flash no
- X open no
- X stamp yes
- X }
- X {
- X match "A tty window"
- X to "Its child"
- X comment "Ignore spurious window system messages"
- X ignore no
- X beep 0
- X flash no
- X open no
- X stamp yes
- X }
- X {
- X match "Too large a window number"
- X comment "Ignore spurious window system messages"
- X ignore yes
- X }
- X {
- X match "NFS server"
- X comment "Track NFS server message"
- X ignore no
- X beep 0
- X flash no
- X open no
- X stamp yes
- X }
- X {
- X match "yp:"
- X comment "Track YP server problems"
- X ignore no
- X beep 0
- X flash no
- X open no
- X stamp yes
- X }
- X {
- X match "/usr/local/frame"
- X comment "Ignore various noisy Frame messages"
- X ignore yes
- X }
- X {
- X match "starting maker"
- X to "maker: Finished"
- X comment "Ignore various noisy Frame messages"
- X ignore yes
- X }
- X {
- X match "maker:"
- X comment "Ignore various noisy Frame messages"
- X ignore yes
- X }
- X {
- X match "fmprintdriver.ps: Using"
- X comment "Ignore various noisy Frame messages"
- X ignore yes
- X }
- X}
- END_OF_FILE
- if test 2201 -ne `wc -c <'sample.filter'`; then
- echo shar: \"'sample.filter'\" unpacked with wrong size!
- fi
- # end of 'sample.filter'
- fi
- if test -f 'window_misc.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'window_misc.c'\"
- else
- echo shar: Extracting \"'window_misc.c'\" \(3321 characters\)
- sed "s/^X//" >'window_misc.c' <<'END_OF_FILE'
- X/************************************************************************/
- X/* Copyright 1988-1990 by Chuck Musciano and Harris Corporation */
- X/* */
- X/* Permission to use, copy, modify, and distribute this software */
- X/* and its documentation for any purpose and without fee is */
- X/* hereby granted, provided that the above copyright notice */
- X/* appear in all copies and that both that copyright notice and */
- X/* this permission notice appear in supporting documentation, and */
- X/* that the name of Chuck Musciano and Harris Corporation not be */
- X/* used in advertising or publicity pertaining to distribution */
- X/* of the software without specific, written prior permission. */
- X/* Chuck Musciano and Harris Corporation make no representations */
- X/* about the suitability of this software for any purpose. It is */
- X/* provided "as is" without express or implied warranty. This */
- X/* software may not be sold without the prior explicit permission */
- X/* of Harris Corporation. */
- X/************************************************************************/
- X
- X/************************************************************************/
- X/* */
- X/* window_misc.c miscellaneous window management functions */
- X/* */
- X/************************************************************************/
- X
- X#include <stdio.h>
- X#include <sys/param.h>
- X#include <sys/types.h>
- X#include <xview/xview.h>
- X#include <xview/panel.h>
- X#include <xview/xv_xrect.h>
- X
- X#include "manifest.h"
- X#include "contool_ui.h"
- X
- X/************************************************************************/
- XEXPORT void pinned_menu_notify(menu, item)
- X
- XMenu menu;
- XMenu_item item;
- X
- X{ Xv_opaque pin_window = (Xv_opaque) xv_get(menu, MENU_PIN_WINDOW);
- X void (*menu_notify)() = (void (*)()) xv_get(menu, MENU_GEN_PROC);
- X void (*item_notify)() = (void (*)()) xv_get(item, MENU_GEN_PROC);
- X
- X if (pin_window && xv_get(pin_window, XV_SHOW)) {
- X if (menu_notify)
- X (*menu_notify)(menu, MENU_NOTIFY);
- X if (item_notify)
- X (*item_notify)(item, MENU_NOTIFY);
- X if (item_notify)
- X (*item_notify)(item, MENU_NOTIFY_DONE);
- X if (menu_notify)
- X (*menu_notify)(menu, MENU_NOTIFY_DONE);
- X }
- X}
- X
- X/************************************************************************/
- XEXPORT Panel_setting file_completion(item, event)
- X
- XPanel_item item;
- XEvent *event;
- X
- X{ char *p, *expand_filename();
- X
- X switch (event_action(event)) {
- X case '\n' :
- X case '\r' :
- X case ' ' : if ((p = expand_filename(xv_get(item, PANEL_VALUE))) == NULL)
- X window_bell(xv_get(item, XV_OWNER));
- X else
- X xv_set(item, PANEL_VALUE, p, 0);
- X return(PANEL_NONE);
- X default : return(panel_text_notify(item, event));
- X }
- X}
- X
- X/************************************************************************/
- XEXPORT void place_dialog(base, dialog)
- X
- XXv_opaque base;
- XXv_opaque dialog;
- X
- X{ Rect br, dr, sr;
- X
- X sr = *((Rect *) xv_get(base, WIN_SCREEN_RECT));
- X frame_get_rect(base, &br);
- X frame_get_rect(dialog, &dr);
- X if (rect_right(&br) + dr.r_width < sr.r_width) {
- X dr.r_left = rect_right(&br);
- X dr.r_top = br.r_top;
- X }
- X else if (dr.r_width <= br.r_left) {
- X dr.r_left = br.r_left - dr.r_width;
- X dr.r_top = br.r_top;
- X }
- X else {
- X dr.r_left = br.r_left + 32;
- X dr.r_top = br.r_top + 32;
- X }
- X frame_set_rect(dialog, &dr);
- X}
- END_OF_FILE
- if test 3321 -ne `wc -c <'window_misc.c'`; then
- echo shar: \"'window_misc.c'\" unpacked with wrong size!
- fi
- # end of 'window_misc.c'
- fi
- echo shar: End of archive 1 \(of 6\).
- cp /dev/null ark1isdone
- MISSING=""
- for I in 1 2 3 4 5 6 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 6 archives.
- rm -f ark[1-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
-
- Chuck Musciano ARPA : chuck@trantor.harris-atd.com
- Harris Corporation Usenet: ...!uunet!x102a!trantor!chuck
- PO Box 37, MS 3A/1912 AT&T : (407) 727-6131
- Melbourne, FL 32902 FAX : (407) 727-{5118,5227,4004}
-
- I'm glad you asked, son. Being popular
- is the most important thing in the world. -- Homer Simpson
-